home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / windows / msk312.zip / KERMIT.BWR < prev    next >
Text File  |  1992-09-29  |  64KB  |  1,257 lines

  1. File MSK312.BWR        MS-DOS KERMIT 3.12 "BEWARE FILE"         September 1992
  2.  
  3.              BUGS, LIMITATIONS, AND HINTS
  4.  
  5. This file applies to both versions 3.11 and 3.12 of MS-DOS Kermit for the IBM
  6. PC and PS/2 families and compatibles.  If you have problems with MS-DOS
  7. Kermit, please read this to find out the status of the problem.  It might be
  8. known already, and a workaround listed here.  Problems in 3.11 that are fixed
  9. in 3.12 are noted.
  10.  
  11. The user manual for MS-DOS Kermit 3.11 is the book "Using MS-DOS Kermit",
  12. Second Edition, by Christine M. Gianone, published by Digital Press, Bedford,
  13. MA (1991), order number EY-H893E-DP.  Call 1-800-344-4825 (toll free, USA) to
  14. order, or order by mail from Columbia University.  Use this file plus the file
  15. MSR312.UPD as a supplement to the book.
  16.  
  17.   Certain features were added to the dialing directory and the TCP/IP
  18.   support after press time for the second edition of the book.  For
  19.   greater details about these features, see the MS-DOS Kermit help file,
  20.   KERMIT.HLP or MSKERM.HLP.  For TCP/IP, also see the section at the
  21.   end of this file.
  22.  
  23. MS-DOS Kermit 3.11 has been successfully tested with PC-DOS 2.0, 3.0, 3.30, 4.0
  24. and 5.0 on a wide variety of IBM PCs, XTs, PC/ATs, PS/2s, and compatibles.  DOS
  25. 2.0 or later is required for basic operation, and 3.30 or later is required for
  26. certain features such as code page switching.
  27.  
  28. Building version 3.12 from source code requires Microsoft MASM and C 6.0 or
  29. later.
  30.  
  31. Please report problems via e-mail to Info-Kermit@watsun.cc.columbia.edu or to
  32. KERMIT@CUVMA.BITNET, or call (212) 854-5126, or write to Kermit Distribution,
  33. Columbia University Center for Computing Activities, 612 West 115th Street,
  34. New York, NY 10025, USA.
  35.  
  36. PROBLEMS CORRECTED BY PATCHES IN MSKERMIT.PCH
  37.  
  38. NOTE:  All the problems listed in this section are corrected in version 3.12.
  39.  
  40. Some bugs that surfaced after the release of version 3.11 are correctable by
  41. runtime patches in the file MSKERMIT.PCH.  Put this file in the same directory
  42. as your MSKERMIT.INI file, and the patches will be installed automatically each
  43. time you start Kermit.
  44.  
  45. Patch #1 (optional): Supply a different video mode for the Orchid Designer
  46. Professional VGA board when switching to 132 columns.  As distributed, this
  47. patch is commented out.
  48.  
  49. Dump screen via Ctrl-]F turns on LOCAL-ECHO. Corrected by Patch #2.
  50.  
  51. Problem with cursor indexing in scrolling region setup.  Fixed by Patch #3.
  52.  
  53. Problems with matching curly braces in commands.  Fixed by Patch #4.
  54.  
  55. Various reports requested by VT320 escape sequences from the host are not
  56. furnished.  Fixed by Patch #5.
  57.  
  58. Transparent printing problem: MS-DOS Kermit does not properly respond to
  59. CSI 4 i to terminate transparent printing when the CSI is sent in 8-bit form.
  60. Fixed by Patch #6.
  61.  
  62. Inability to transfer files on SET PORT TCP/IP connections when PARITY is
  63. EVEN or MARK.  Fixed by Patch #7.
  64.  
  65. VT220/320 DEC User Definable Keys, downloaded via escape sequences from the
  66. host, were being defined incorrectly.  Fixed by Patch #8.
  67.  
  68. The new release (2.2/R8) of Interconnections Inc's TES program crashes Kermit
  69. and requires the PC to be rebooted.  Patch #9 is a workaround for this problem.
  70. The TES bug also prevents correct reception of 8-bit characters.  Temporary
  71. workaround: tell the host not to send 8-bit data (e.g. SET TERMINAL /NOEIGHT in
  72. VAX/VMS).
  73.  
  74. USING MS-DOS KERMIT ON LOW-END PCs
  75.  
  76. Original 4.77 MHz PCs (PC, PC/XT) operate at lower processing speed than
  77. modern PC models, and can not support high communication speeds (9600 bps,
  78. 19200 bps, 38400 bps, depending on the exact configuration), unless both
  79. MS-DOS Kermit is configured to use XON/XOFF software flow control or RTS/CTS
  80. hardware flow control, and the computer or device with which MS-DOS Kermit is
  81. communicating also supports, and is configured to use, the same kind of flow
  82. control.
  83.  
  84. It is possible to boost the performance of a low-end PC by installing a 16550
  85. UART in place of the original 8250 if your serial board has a socketed
  86. (removable) UART chip.  The 16550 incorporates an internal hardware buffer to
  87. reduce the amount of interrupts that must be serviced by MS-DOS Kermit.
  88. MS-DOS Kermit fully supports the 16550 UART's buffering capabilities.
  89.  
  90. MS-DOS 5.0
  91.  
  92. Reportedly, Kermit can lose incoming characters at high speeds (19200, 38400,
  93. etc, depending on CPU model).  DOS 5.0's new memory management functions might
  94. be causing interrupts to be lost.  If the serial port data-ready interrupt is
  95. not delivered to Kermit, Kermit never knows that a character has arrived and
  96. therefore does not read it.  This problem has been reported by some users,
  97. while most other users report no problems at all operating at high speeds
  98. with DOS 5.0.
  99.  
  100. MICROSOFT WINDOWS, DESQVIEW, OS/2, ETC
  101.  
  102. Although MS-DOS Kermit can work in these environments, and even takes advantage
  103. of many of their features, it does not have a "graphical user interface".  You
  104. still have to type commands to the MS-Kermit> prompt or execute them from
  105. command files with the TAKE command.
  106.  
  107. OS/2 1.x...
  108.  
  109. Under OS/2 1.3 and earlier, MS-DOS Kermit only runs in full-screen mode.
  110. Under 1.x of OS/2, the serial port must first be conditioned by the command:
  111.  
  112.   SETCOM40 COM1=ON
  113.  
  114. OS/2 2.0...
  115.  
  116. MS-DOS Kermit can run in a window of OS/2 2.0.  Under OS/2 version 2.0,
  117. Kermit's flow control reportedly has no effect because OS/2 itself is doing
  118. the buffering.  You can configure OS/2 to handle flow control itself by
  119. adding a command like the following to your STARTUP.CMD file:
  120.  
  121.     MODE COM1 XON=ON          (for XON/XOFF software flow control) 
  122. or:
  123.     MODE COM1 RTS=HS OCTS=ON  (for RTS/CTS hardware flow control)
  124.  
  125. If your PC's communication port is a 16550A[NF] UART serial communication
  126. adapter (as is standard on the PS/2), it has a built-in buffer to improve
  127. performance.  To enable use of the 16550's buffering capability, add BUFFER=ON
  128. to your MODE command:
  129.  
  130.     MODE COM1 XON=ON BUFFER=ON         (for XON/XOFF software flow control) 
  131. or:
  132.     MODE COM1 RTS=HS OCTS=ON BUFFER=ON (for RTS/CTS hardware flow control)
  133.  
  134. IDLE_SENSITIVITY should be set to 0 and IDLE_DETECTION_TIME should be 100 to
  135. reduce the jerkiness of DOS sessions.
  136.  
  137. By all accounts, massive amounts of memory (at least 8MB, and the more the
  138. better) are required for successful operation of MS-DOS Kermit or ANY
  139. communications software written for DOS in order to prevent the software from
  140. being swapped out while characters are arriving at the serial port.
  141.  
  142. On OS/2 systems with small amounts of memory, characters are can be lost
  143. during terminal emulation and file transfer, especially at high communication
  144. speeds.  It is also reported that other commands, particularly script
  145. programming and macro commands which allocate memory dynamically, fail in
  146. bizarre ways.  These problems have been reported to IBM and hopefully a
  147. solution will be found.  Meanwhile, here are some suggested workarounds:
  148.  
  149.  1. Install more memory in your PC, bringing it up to 8MB or more.
  150.  2. Remove the line IFS=HPFS.IFS from CONFIG.SYS.
  151.  3. Run Kermit at a lower communication speed.
  152.  4. Use the MODE command to have OS/2 perform the desired type of flow control.
  153.  5. Configure Kermit to use the minimum amount of memory for rollback
  154.     screens, etc. ("SET KERMIT=ROLLBACK n" DOS environment variable).
  155.  
  156. IBM suggests running Kermit in a true DOS 5.0 Session instead of the VDM to
  157. allow direct hardware access, but reportedly this does not help because of
  158. problems in OS/2's COMM.SYS and VCOMM.SYS drivers.  (Perhaps it helps if these
  159. drivers are not loaded).  The VCOMM.SYS driver is certified by IBM to work at
  160. speeds up to 2400 bps, but reportedly it has trouble even at this low speed.
  161.  
  162. Other hints for those who are experiencing buffer overruns or other data loss:
  163. For file transfer, use small packet sizes and a window size of one.  During
  164. terminal emulation, avoid host-initiated printing.
  165.  
  166. TCP/IP (and presumably other networks supported by MS-DOS Kermit) cannot be
  167. used with OS/2.  OS/2's network interface, the Communication Manager, is
  168. totally different from the methods (such as Packet Drivers) known to Kermit.
  169. If Novell provides a Virtual ODI Driver (VODI.SYS?) for OS/2, MS-DOS Kermit 
  170. 3.12 or later should be able to operate in this environment with its new
  171. built-in ODI support.
  172.  
  173. WINDOWS...
  174.  
  175. You can't run Kermit in a Microsoft Windows 3.0 window except on a 386-class
  176. machine in running Windows in Enhanced Mode, which generally requires that
  177. your PC have at least several megabytes of main memory.
  178.  
  179. Under Windows 3.0 Real or Standard mode, you can use still use MS-DOS Kermit
  180. as a full-screen DOS application.  Kermit works in a window on all PCs (if
  181. they have enough memory) under Windows 2.0.
  182.  
  183. Reportedly, a third-party communication port driver (such as TurboComm) might
  184. be needed to run Kermit at speeds greater than 9600 bps under Windows 3.0.  A
  185. 16550a UART helps too, for its FIFO buffering.  Other reports indicate that
  186. high speed operation is possible after all, and suggest looking at the Windows
  187. files SYSIN*.TXT for information about SYSTEM.INI settings related to
  188. communication ports, particularly COMxBuffer and COMBoostTime.  Still other
  189. reports say that Kermit runs fine in a window at 19200 bps without losing any
  190. characters, as long as a good flow control method (such as RTS/CTS) is in
  191. effect.  The real answer is a combination of software, BIOS, machine
  192. architecture, serial port hardware, which drivers and TSRs are loaded, system
  193. load, and Windows settings.
  194.  
  195. When running Kermit in two windows at once, one on COM1, one on COM2, Windows
  196. complains that both applications want to access COM1.  To make sure that COM1's
  197. IRQ 4 is not touched when starting COM2 (part of the "find the IRQ" test),
  198. specify the COM2 port parameters explicitly as SET COM2 \x2f8 3 (standard port
  199. address and IRQ for COM2) to make Kermit skip the test.
  200.  
  201. The use of COM3 and COM4 under Windows is problematic, but most users report
  202. success after finding the right "SET COMx <address> <irq>" command.
  203.  
  204. When running MS-DOS Kermit under any version of Windows, specifying a ",P" at
  205. the end of a serial port setting in WIN.INI or in a MODE command can cause loss
  206. of characters from the serial port.  Remove the ",P" from the setting.
  207.  
  208. WINDOWS AND TCP/IP...
  209.  
  210. To use Kermit's TCP/IP support under Windows 3.0, you either must set up the
  211. KERMIT.PIF file to "Lock Application Memory" (Enhanced-Mode Advanced options
  212. screen), or else run the WINPKT "shim" in addition to (and after) your packet
  213. driver.  WINPKT should be given a lower software interrupt number than your
  214. packet driver, for example (using a Western Digital Ethernet board):
  215.  
  216.   WD8003E 0x61 0x7 0x280 0xca00
  217.   WINPKT 0x60 0x61
  218.   IPX
  219.   NETX
  220.  
  221. The order is important: start the packet driver first at interrupt 0x61
  222. (or higher).  Then start WINPKT, telling it to use interrupt 0x60 to talk to
  223. application software, and 0x61 to talk to the actual packet driver.  After
  224. loading WINPKT, you can optionally load Novell or other
  225. packet-driver-compatible network software.
  226.  
  227. Only one copy of MS-DOS Kermit can make a network connection at one time under
  228. Windows.
  229.  
  230. Here is a PIF configuration for Kermit that has proven successful for TCP/IP
  231. operation in a Windows 386 Enhanced-Mode window:
  232.  
  233.   Video Memory:    High graphics
  234.   Memory:                  320  640
  235.   Display:                 Windowed
  236.   Execution:               Background
  237.   Close Window on Exit
  238.   Foreground/Background:   100 or 150
  239.   Detect Idle Time
  240.   Lock Application Memory (or don't lock application memory if WINPKT loaded)
  241.   Monitor nothing ports
  242.   Emulate Text Mode
  243.   Retain Video Memory
  244.  
  245. DESQVIEW and DESQVIEW/X ...
  246.  
  247. Users of DESQview set "Optimize Communications" in the Advanced menu to "No".
  248.  
  249. DESQview/X reportedly requires that the serial port be configured to
  250. "optimize" to prevent Kermit from losing characters.  Network connections
  251. (TCP/IP over a packet driver or ODI) within an X window of DESQview/X
  252. apparently do not work.
  253.  
  254.  
  255. INCOMPATIBILITIES BETWEEN MS-DOS KERMIT 3.11 and 3.00/3.01: 
  256.  
  257. In version 3.11, "O" is not a sufficient abbreviation for OUTPUT because of
  258. the new OPEN command.  If you have a script with "O" commands in it, it will
  259. fail.  If you have exactly one macro defined that starts with "O", it is
  260. executed instead.  Change abbreviations of OUTPUT from "O" to (at least) "OU".
  261. In version 3.12, "O" is accepted as a special abbreviation for OUTPUT.
  262.  
  263. Macro arguments are now "stacked", saved at each macro entry and restored upon
  264. exit, so calling macro B from within macro A no longer destroys macro A's
  265. arguments.
  266.  
  267. Macro definitions in 3.11 can be longer than before.  Long macros that work in
  268. 3.11 won't necessarily work in earlier releases.
  269.  
  270. The new macro argument \%0 now holds the name of the macro.
  271.  
  272. The REPLAY command allows screen rollback, dump, print, etc.  At the end of the
  273. replay file, use regular terminal emulation keys (PgUp, Ctrl-End, PrintScreen)
  274. to invoke these functions, and use Alt-X, Ctrl-]C, or Ctrl-C to get back to the
  275. prompt.  Previously, any keystroke would return to the prompt.
  276.  
  277. If an INPUT command is interrupted by pressing any key, the status is set to
  278. FAILURE, just as if the command had timed out.  If you need to know whether an
  279. INPUT failed because it timed out or was interrupted, use a technique like
  280. this:
  281.  
  282.   SET ALARM 30
  283.   INPUT 30 Login:
  284.   IF SUCCESS GOTO OK
  285.   IF ALARM ECHO INPUT Timed out
  286.   IF NOT ALARM ECHO INPUT Interrupted from keyboard
  287.  
  288. ECHO no longer requires a \13 on the end.  It supplies both CR and LF.
  289.  
  290. The WRITE command, introduced in version 3.00, no longer accepts "objects"
  291. like DATE, TIME, etc.  Now it is more like an ECHO command that includes a
  292. destination specifier: WRITE SCREEN, WRITE SESSION, etc.  The argument in all
  293. cases is a line of text.  This text may contain any kind of backslash codes or
  294. variables, including the new (to version 3.10) built-in \v(xxx) variables like
  295. \v(time), \v(date), etc.  Old-format WRITE commands will produce undesired
  296. results.  For example WRITE SCREEN TIME FOO will print "TIME FOO" on the
  297. screen rather than something like "12:34:56 FOO".
  298.  
  299. BYE, FINISH, or LOGOUT commands that fail (e.g. because the remote server has
  300. these operations disabled) no longer behave as if they had succeeded.
  301.  
  302. Text and graphics screens can now have separate colors.
  303.  
  304. Host-generated autoprint sequences work differently.  In version 3.01 and
  305. earlier, MS-DOS Kermit copied characters to the printer as they arrived,
  306. regardless of the screen dimensions.  In version 3.10 and later, Kermit's
  307. action follows that of a real VT terminal: it waits until the cursor moves off
  308. the line with a linefeed or formfeed, or the line wraps.  If your screen does
  309. not support 132 columns, Kermit wraps long lines -- even those destined for the
  310. printer during autoprint sequences -- at 80 columns.  If you need to direct
  311. long lines to your printer under these circumstances, use transparent print
  312. instead, or else LOG SESSION PRN and then print the log.
  313.  
  314. The Alt-minus key no longer "toggles" among all of Kermit's terminal types.
  315. As of version 3.11, Alt-minus switches between the Tektronix graphics screen
  316. and the text screen for the current text terminal type (e.g. VT320).
  317.  
  318. DIALING
  319.  
  320. The DIAL command and dialing directory have been totally redone for MS-DOS
  321. Kermit 3.11.  See KERMIT.HLP (MSKERM.HLP) for a description.  If you need to
  322. dial a non-Hayes compatible modem, write a dialing script for it, and change
  323. the definition of the "_modem" variable in MSKERMIT.INI.  See MSIROLM.SCR for
  324. an example: a dialing script for the IBM/Siemens/Rolm CBX.
  325.  
  326. SERIAL COMMUNICATIONS
  327.  
  328. On IBM PCs and PS/2s with IBM asynchronous adapters, Kermit can be used at
  329. speeds up to 57600 bps under DOS (under Windows or DesqView, the maximum speed
  330. is probably lower).  115200 bps works only with a very short shielded cable,
  331. and the async adapters of the two machines in perfect tune.  Some VAX serial
  332. port interfaces are out of tolerance at 19,200 bps and faster.
  333.  
  334. If your speed is set too high, the symptom might be lost or garbled characters
  335. or graphics images on the screen, or data-overrun beeps.  Normally flow control
  336. prevents these problems so use it if you can.  Printing while in CONNECT mode
  337. needs flow control to be active.
  338.  
  339. MS-DOS Kermit does not monitor the communication line for carrier loss during
  340. terminal emulation or file transfer.  You can SHOW MODEM or SHOW COMMUNICATIONS
  341. to inquire about CD, DSR, and CTS.  The script command WAIT permits sensing
  342. carrier presence in a script program.
  343.  
  344. The SHOW MODEM and WAIT commands work right only if your modem or other
  345. communication device is configured to raise and lower the DSR, CTS, and CD
  346. signals appropriately, and the cable that connects your PC to the modem passes
  347. these signals through.  For some modems, the factory setting is to always keep
  348. CD on, even if there is no connection.  Consult your modem manual.
  349.  
  350. For RS-232 devices, the HANGUP command (and Ctrl-]H in CONNECT mode) works
  351. only if the cable that connects your PC to the communication device passes the
  352. DTR signal through, and if the communication device itself is configured to
  353. hang up or otherwise terminate the connection when the DTR signal is lowered
  354. by the PC.  For some modems, the factory setting is to ignore DTR transitions.
  355. Consult your modem manual.  NOTE: in version 3.11, the HANGUP command turned
  356. off DTR for about 1/2 second and then turned it back on again.  In version
  357. 3.12, the HANGUP command turns off DTR until the next time you issue a command
  358. that accesses the serial port.
  359.  
  360. When communicating across some network pathways, the longest burst of
  361. information tolerated from the PC can be rather short.  For example, the LAT
  362. path with SET PORT DECnet has a limit of 256 bytes and the SET PORT TES path
  363. has a limit of 512 bytes in a burst.  Longer bursts can cause the network
  364. software to drop the connection.  This is important when sending files, and if
  365. sliding windows are active, the sum of all the packets in the window (packet
  366. length times the number of window slots) must be shorter than the above limits.
  367. This is not a Kermit problem.
  368.  
  369. TERMINAL EMULATION
  370.  
  371. Kermit's VT320/340 emulator lacks the following features:
  372.  
  373.  . Smooth scroll
  374.  . Downloadable soft fonts
  375.  . ReGis graphics (VT340/330)
  376.  . Dual sessions in split screens (VT340/330)
  377.  . Local screen editing and block transmission (for security reasons)
  378.  . ENQ/Answerback (also for security reasons)
  379.  . True double height/width characters (these are simulated)
  380.  . Selective erasure (as a character attribute, a formatted screen item)
  381.  . Many of the exotic and rarely used features of the DEC VT340/330
  382.    series: mostly formatted screen and graphics operations highly specialized
  383.    to DEC hardware.
  384.  
  385. On certain "national keyboards", like the German keyboard, Kermit's normal
  386. escape character, Ctrl-] (Control-Rightbracket) does not appear to work.  This
  387. is because IBM changed the way certain control characters are typed on these
  388. keyboards.  On the German keyboard, Ctrl-] is produced by holding down the Ctrl
  389. (Strg) key and pressing the + (plus) key.  MS-DOS Kermit has no way of knowing
  390. this, and continues to display the escape character as "^]".
  391.  
  392. Kermit does not work with certain Swedish keyboard drivers because of a bug
  393. in the keyboard driver.  Workaround: use a different keyboard driver.
  394. Reportedy there are several different Swedish keyboard drivers available.
  395.  
  396. If VAX/VMS thinks you have a VT220 or VT320, it sends 8-bit control sequences.
  397. Kermit does not understand them unless you SET TERMINAL BYTESIZE 8.  The
  398. symptom is the appearance of fragments of escape sequences on the screen and
  399. wrong cursor positioning, and possibly fractured tab settings, particularly
  400. during EVE sessions.  You can prevent VMS from sending 8-bit control sequences
  401. (if you really do not have an 8-bit connection) by giving the VMS command SET
  402. TERMINAL /NOEIGHT.  For VAX/VMS, you should also use Xon/Xoff flow control in
  403. both directions (SET TERM /TTSYNC /HOSTSYNC on VMS).
  404.  
  405. In VT100/200/300 emulation on the IBM PC family, receipt of ESC [ 4 m (turn on
  406. underscore) results in reverse video rather than underscore on IBM CGA, EGA and
  407. other color displays.  IBM display adapters have one less attribute than DEC
  408. monochrome terminals, and in addition the two systems intensify dots
  409. differently (IBM does foreground/character dots only, whereas DEC can
  410. illuminate any dot).
  411.  
  412. SET TERMINAL COLOR 1 [3xx 4xx] (used to make the foreground color bright), if
  413. issued when SET TERMINAL SCREEN REVERSE is in effect, reverts to normal video.
  414.  
  415. If certain incomplete escape sequences (e.g. Operating System Command) are
  416. received during terminal emulation, Kermit can hang waiting for the string
  417. terminator that never comes, usually because of noise on the communication
  418. line.  Reset the terminal emulator by pressing Alt-= (Alt-equals), the default
  419. key for \Kreset.
  420.  
  421. Kermit does not support 132-column mode on the IBM monochrome adapter, CGA,
  422. MCGA, or EGA.  However, if your display adapter handles 132 columns in text
  423. mode, and Kermit knows how to control it, Kermit can switch automatically
  424. between 80- and 132-column mode upon host command or SET TERMINAL WIDTH { 80,
  425. 132 }.  Otherwise you can provide external commands for changing the width in
  426. the files COLS80.BAT and COLS132.BAT.  Kermit does not support other widths
  427. (except, to a certain extent, 40).
  428.  
  429. Kermit assumes 25 screen lines but can adapt to other lengths if it knows how
  430. to get this information from the video adapter.  There still might be some
  431. confusion about screen length when switching between text and graphics modes,
  432. or between 80 and 132 column mode, or escaping back from CONNECT mode, due
  433. primarily to lack of reliable or consistent information from the many different
  434. kinds of video adapters.
  435.  
  436. The following video boards are directly controllable by Kermit for changing
  437. screen width:
  438.  
  439.   ATI EGA and VGA Wonder
  440.   AST, Dell, and other boards based on Western Digital VGA boards
  441.   AT&T / Olivetti
  442.   Everex Viewpoint EV-659, FVGA-673, EV-678, Micro Enhancer Deluxe
  443.   IBM XGA
  444.   Paradise AutoSwitch EGA Mono
  445.   Paradise Professional
  446.   Paradise VGA Plus 16 (ROM BIOS 003056-xxx firmware)
  447.   Paradise VGA Plus (ROM BIOS 003056-xxx firmware)
  448.   Paradise VGA Professional (ROM BIOS 003056-xxx firmware)
  449.   Paradise VGA1024
  450.   STB VGA/EM (Tseng TVGA)
  451.   STB VGA/EM Plus (Tseng 4000), VGA/EM-16, VGA/EM-16 Plus
  452.   Tseng Labs EVA board with 132-column kit installed
  453.   Tseng Labs UltraPAK mono/Hercules with 132 column modes
  454.   Video 7 Vega Deluxe with 132X25.COM driver installed and Video 7 VGA
  455.  
  456. For other boards, create COLS80.BAT and COLS132.BAT files.  If your video
  457. board and monitor can't do 132 columns in text mode, neither can Kermit.
  458.  
  459. If you have a monitor with fixed horizontal frequency but a video adapter that
  460. Kermit knows how to switch into 132 column mode, you will see only garbage on
  461. your screen whenever Kermit switches to 132 columns.  There is no way to tell
  462. Kermit to ignore "switch to 132 columns" commands.  If you buy a
  463. 132-column-capable video adapter, be sure you have a compatible monitor.
  464.  
  465. To get properly formatted screens during terminal emulation, be sure to inform
  466. the remote host of your screen width and length.
  467.  
  468. So that key translation and macros can work on both IBM and non-IBM compatible
  469. PCs, Kermit uses the system BIOS to obtain key scan codes.  But the IBM BIOS
  470. does not produce scan codes at all for certain keys, and may produce duplicate
  471. scan codes for others.  Num Lock, Scroll Lock, Pause are examples.
  472.  
  473. When you PUSH to DOS (including when you use Kermit's RUN command), and you
  474. have XON/XOFF flow control enabled, Kermit sends an XOFF (Ctrl-S) to the host
  475. when you leave, and XON (Ctrl-Q) when you return.  This prevents data
  476. transmitted by the host from being lost.  However, if you do this while using
  477. the EMACS text editor on the host, the Ctrl-S will be interpreted as a Search
  478. command, and the Ctrl-Q as a Quote command.  When you return to EMACS, type
  479. several Ctrl-G's to get back to normal.
  480.  
  481. Similar comments about sending Xoff and Xon apply when Kermit is commanded
  482. to change its screen size between 80 and 132 columns.
  483.  
  484. Session logging can be turned on using the LOG SESSION command, and it can
  485. be toggled on and off during terminal emulation by using whatever keys are
  486. associated with the verbs \Klogoff and \Klogon.  One user stated the
  487. requirement to enable a session log, but to have it initially turned off.
  488. This can be done as follows (using the F1 and F2 keys as examples):
  489.  
  490.   SET KEY \315 {\Kloginit}  ; F1 to turn on log
  491.   SET KEY \316 \klogoff     ; F2 to turn log off
  492.   DEFINE loginit log session, set key \315 \klogon, define loginit, connect
  493.  
  494. To log your session to a printer, add the word PRN after "log session" in
  495. the third line above.
  496.  
  497. The session log is written to disk by DOS.  The frequency with which DOS
  498. updates this file is governed by the BUFFERS= line in your CONFIG.SYS file (see
  499. your DOS manual).  If you allocate a large number of buffers in CONFIG.SYS,
  500. disk operations occur infrequently and this improves performance.  If you need
  501. to have the session log updated more frequently to minimize the loss of data
  502. when there is a power failure, you can do this (at the expense of efficiency)
  503. by allocating a smaller number of buffers in CONFIG.SYS.
  504.  
  505. GRAPHICS TERMINAL EMULATION
  506.  
  507. If your display adapter lacks sufficient memory (as do CGA and the early 64K
  508. EGA boards), then when you switch away from a graphics screen, or type the
  509. connect-mode escape character (Ctrl-]), the graphics image is lost.
  510. Furthermore, certain graphics images may be overlaid with vertical stripes on
  511. small (64K) EGA systems.
  512.  
  513. PS/2 Model 25 and 30 MCGA adapter is used in low-resolution CGA mode by
  514. default; images may be elongated or truncated.  Hi-resolution graphics can be
  515. done (as of version 3.11) via SET TERM GRAPHICS VGA, but the PC might not be
  516. able to keep up at speeds above 9600 bps.
  517.  
  518. When you type the escape character (normally Ctrl-]) while in Tektronix
  519. graphics mode, the screen goes back to text memory.  Then when you type the
  520. argument character, the graphics screen reappears (unless the argument was C or
  521. P).  Ctrl-]F will not file the graphics screen, but rather the text screen,
  522. because that's the screen that's showing after type the Ctrl-] key.  To file
  523. the graphics screen (in TIFF format), use \Kdump (normally on Ctrl-End).
  524.  
  525. You can't dump the Tektronix screen while the GIN-mode crosshair cursor is
  526. active; Kermit's keyboard translator is not active.  Key strokes (of regular
  527. typewriter keys) or mouse actions are used to transmit the crosshair
  528. coordinates.  If you press a non-typewriter key, Kermit just beeps.
  529.  
  530. Kermit does not emulate a particular kind of color graphics terminal, such as a
  531. DEC ReGIS display or a Tektronix 41xx or 42xx series.  However, it can be used
  532. for color graphics by mixing ANSI color-setting escape sequences with Tektronix
  533. or Sixel commands.  This requires graphics software vendors adding support for
  534. MS-DOS Kermit graphics to their packages (so far, WordPerfect Corp has done
  535. this for their host-resident products).  There is at least one ReGis-to-Sixel
  536. converter on the market: RETOS, a DEC product for VAX/VMS.
  537.  
  538. Problems may occur when using Kermit with host-resident (VAX/VMS) versions of
  539. WordPerfect because the color palette report sent upon request of WordPerfect
  540. is very long. If the host is not configured properly, parts of the report will
  541. be lost because of overruns on the VMS side.  SET TERM /HOSTSYNC and /TTSYNC
  542. are required for WP/VMS.  Even then intervening communication boxes (e.g.
  543. terminal servers) can become overloaded with the 200++ byte response.
  544.  
  545. PRINTER SUPPORT
  546.  
  547. (Shift-)Printscreen can cause the PC to hang if there is no attached printer.
  548. This is a BIOS feature, Kermit never receives the command.  If this happens
  549. during terminal emulation, try pressing Alt-= (hold down Alt and press the "="
  550. key) several times to reset the terminal emulator.
  551.  
  552. Serial printers are not directly supported.  Kermit does not do flow control
  553. between itself and a serial printer.  To use a serial printer effectively, you
  554. must have a driver for it that takes care of flow control, such as MSPSPD,
  555. available on the MS-DOS Kermit Utilities and Technical Documentation diskette.
  556.  
  557. Transparent printing starts when the host sends the sequence ESC [ 4 i and
  558. stops when the host sends ESC [ 5 i.  All characters, including escape
  559. sequences, that arrive at the port are passed directly to the printer without
  560. translation (but the parity bit is stripped if Kermit's parity is not NONE).
  561. If character translation is desired, or it is desired not pass screen-control
  562. escape sequences to the printer, use Autoprint rather than Transparent print
  563. (ESC [ 0 i, ESC [ ? 4 i, ESC [ ? 5 i).  In that case, characters are translated
  564. to the current IBM code page.  If your printer doesn't support your IBM code
  565. page, you need an external utility to translate from the PC code page to the
  566. printer's character set.  You can use SET PRINTER xxxx to capture Transparent
  567. print or Autoprint data into a file.
  568.  
  569. INTERNATIONAL CHARACTER SETS
  570.  
  571. In MS-DOS Kermit 3.01 and later, SET TRANSLATION INPUT has been extended to
  572. work with character sets in which the C1 range (80h-9fh) contains graphic,
  573. rather than control, characters, but only if you SET TERMINAL CHARACTER-SET
  574. TRANSPARENT.
  575.  
  576. MS-DOS Kermit 3.01 changed the strategy used by SET TRANSLATION INPUT and
  577. which is described in the first edition of "Using MS-DOS Kermit".  In version
  578. 3.00 and earlier, the command worked like this:
  579.  
  580.   SET TRANSLATION INPUT \xxx \yyy
  581.  
  582. where \xxx is the code for the character received at the communication port,
  583. and \yyy is the code for the character to display on the screen.  In version
  584. 3.01 and later, \xxx is the code for the character that would be displayed on
  585. the screen in the current code page after normal translation, rather than the
  586. untranslated character that arrives at the port.  Example: modifying the
  587. built-in Swedish character set to show selected character values as ASCII
  588. rather than Swedish characters (using PC code page 437) is now done like this:
  589.  
  590.   SET TERMINAL CHARACTER-SET SWEDISH
  591.   SET TRANSLATION INPUT \144 \64  ; What would normally be E-acute is atsign
  592.   SET TRANSLATION INPUT \154 \94  ; U-diaeresis is circumflex
  593.   SET TRANSLATION INPUT \129 \126 ; u-diaeresis is tilde
  594.   SET TRANSLATION INPUT \130 \96  ; e-acute is accent grave
  595.   SET TRANSLATION INPUT ON        ; Enable translation
  596.  
  597. Translations depend on the current code page, and Kermit asks DOS for this
  598. information.  Code pages exist which are not distributed in the USA, such as
  599. CP861 for Icelandic and CP862 for Hebrew.  It is said that DOS incorrectly
  600. reports these code pages to be CP437.  It's not clear what the DOS code page
  601. reporting mechanism would be, if any, for otherwise IBM-compatible PCs fitted
  602. with special character sets such as Cyrillic, Arabic, etc, so in these cases
  603. Kermit assumes CP437 and again, there is no method for the user to load the
  604. necessary character set translation tables for file transfer.
  605.  
  606. Code page switching is reportedly not possible on old PC/ATs with small-memory
  607. (64K) EGA boards, nor with DOS versions earlier than 3.30.
  608.  
  609. In MS-DOS Kermit 3.0 and 3.01, the right hand portion (GRight) of the Latin1
  610. terminal character set won't be accessed by SI/SO locking shifts unless Kermit
  611. first receives the escape sequence ESC-A (Escape, dash, uppercase A) from the
  612. host.  This is the way Digital Equipment Corporation designed the VT300
  613. terminals.  The initial state is G0 = G1 = ASCII, G2 = G3 = Latin1, and SI
  614. (Control-N) shifts the GLeft pointer from the G0 to the G1 set.  The escape
  615. sequence ESC-A puts Latin in G1.  Alternatively, the right hand portion is
  616. accessable by using Single Shift 2, ESC N, or Locking Shift 2, ESC n, before
  617. the text character(s).
  618.  
  619. In MS-DOS Kermit 3.10 and later, you can also designate Latin-1 to G1 (so that
  620. SO/SI will work) by hand with the MS-DOS Kermit command:
  621.  
  622.   SET TERMINAL CHARACTER-SET LATIN1 G1
  623.  
  624. Kermit's terminal emulator sends characters with their 8th bit set as ESC N
  625. <character without the high bit> if parity is other than NONE (version 3.12
  626. has extended this mechanism; see MSR312.UPD).
  627.  
  628. LOG SESSION records the characters that arrive at the serial port, before
  629. translation by either Kermit's built-in terminal character set translation
  630. tables or by user-specified SET TRANSLATION INPUT commands (versions 2.32/A and
  631. earlier did apply the SET TRANSLATION INPUT command before logging to disk).
  632. This allows the REPLAY command to work correctly, but it prevents special
  633. characters from being logged after translation to the PC's own character set.
  634. Screen dump (Ctrl-End or Ctrl-]F) and autoprint, however, record the translated
  635. characters.
  636.  
  637. SET TERMINAL CHARACTER SET is effective only for text screens, not for graphics
  638. screens.  This is because the fonts for all the special characters have not
  639. been designed yet (and may never be, and even if they are, they would require a
  640. lot of memory).
  641.  
  642. International characters in macro names are not case independent.
  643.  
  644. Case-independent string matching operations (e.g. SET INPUT CASE IGNORE,
  645. IF EQUAL xxx yyy) won't necessarily work with international characters.
  646.  
  647. COMMAND PROCESSING
  648.  
  649. A command file that contains lines or commands that are too long for DOS's line
  650. buffer (usually 128 characters) can hang your PC.
  651.  
  652. The maximum size for a Kermit prompt string (SET PROMPT) is 60 characters.
  653. However, Kermit does not complain if you use a longer one.  A work buffer is
  654. overwritten, but the next time it is used, the effect on your prompt is
  655. unpredictable.  (Fixed in 3.12)
  656.  
  657. Question-mark help is not available while typing a numeric field.
  658.  
  659. Commands in TAKE-files or MSKERMIT.INI can be continued by including "-" as the
  660. last character on the line, but NOT if the line ends with a trailing comment.
  661. In other words, you can't have a trailing comment on a continued line.  If you
  662. need to end a line with a dash, but this dash is to be part of the command
  663. rather than a continuation symbol, then use \45 instead or add a trailing
  664. comment.
  665.  
  666. Trailing comments can be used only in command files.  All text starting with
  667. the first semicolon through the end of line is ignored.  If you need to include
  668. an actual semicolon in a command, precede with a backslash (\;).
  669.  
  670. The name and password that you specify in SET SERVER LOGIN must be matched
  671. exactly by the ones in REMOTE LOGIN.  Alphabetic case matters.  If you need to
  672. include spaces within the username, password, or account field of the REMOTE
  673. LOGIN or SET SERVER LOGIN commands, surround the field with {braces}.
  674.  
  675. FILE TRANSFER
  676.  
  677. MS-DOS Kermit does not create zero-length files.  If a zero-length file is sent
  678. to MS-DOS Kermit, it will not be created on your PC's disk.
  679.  
  680. SET EOF CTRL-Z, when used with text files which actually contain Ctrl-Zs, might
  681. result in gaps or truncation in the vicinity of the Ctrl-Z.  This is a DOS
  682. "feature".
  683.  
  684. When using Kermit through a terminal server (particularly those that execute
  685. the TCP/IP Telnet protocol), or directly through a SET PORT TCP connection, it
  686. is sometimes necessary to SET PARITY SPACE in order to transfer files.  It is
  687. sometimes impossible to use very long packets with terminal servers.  Try SET
  688. RECEIVE PACKET-LENGTH 80, working up or down to the longest length that works.
  689.  
  690. REMOTE TYPE and other REMOTE commands resulting in an error "Unable to open
  691. CON": insufficient FILES= in CONFIG.SYS.  FILES= should be at least 20.
  692.  
  693. MS-DOS Kermit uses the program named in the DOS Environment command line
  694. starting as SHELL= as a replacement for COMMAND.COM.  Such a line is seen by
  695. typing SET at the DOS prompt, and it is not associated with the SHELL= line
  696. appearing in file CONFIG.SYS.
  697.  
  698. The MS-DOS Kermit command REMOTE SET BLOCK-CHECK will generally have no effect
  699. upon a remote server.  SET BLOCK-CHECK locally within MS-DOS Kermit.
  700.  
  701. The host prompt for TRANSMIT is a single character (SET TRANSMIT PROMPT).  It
  702. is not possible to specify a multi-character or variable prompt.
  703.  
  704. SCRIPT PROGRAMMING
  705.  
  706. The terminal emulator is not active during execution of script commands such
  707. as INPUT and OUTPUT.  This means:
  708.  
  709.  1. If the host sends the escape sequence that tells the terminal to identify
  710.     itself, it is ignored.  You have to put the appropriate INPUT and OUTPUT
  711.     commands in your script program.  Here is a macro to set your terminal type
  712.     in Kermit and to set up the appropriate response string as well as terminal
  713.     type string:
  714.  
  715.     def term if not def \%1 def \%1 vt320,-
  716.      set term type \%1,-
  717.      if error end 1,-
  718.      assign _ttype \%1,-
  719.      if eq \%1 vt320 assi _tid \27[\63\;1\;2\;4\;8\;9\;15c,-
  720.      if eq \%1 vt220 assi _tid \27[\62\;1\;2\;4\;8\;9\;15c,-
  721.      if eq \%1 vt102 assi _tid \27[\63\;6c,-
  722.      if eq \%1 vt100 assi _tid \27[\63\;1c,-
  723.      if eq \%1 vt52  assi _tid \27/Z
  724.  
  725.     Whenever you switch terminal emulations, do "term vt102" instead of "set
  726.     term type vt102" (substitute your preferred terminal type).  In any script
  727.     that responds to ESC Z (or whatever), have it "output \m(_tid)", and any
  728.     prompt that asks for your terminal type you can "output \m(_ttype)".  And
  729.     be sure to execute a "term" command in your MSKERMIT.INI file, so your
  730.     initial terminal type is set.
  731.  
  732.  2. A host-generated escape to put the terminal in Tektronix mode has no
  733.     effect.  Put explicit SET TERMINAL TYPE TEK commands in the appropriate
  734.     places in your script program.
  735.  
  736.  3. Screen formatting escape sequences have no effect.  If you have SET INPUT
  737.     ECHO ON, they are simply displayed as-is.
  738.  
  739. If the remote host is sending ANSI (VTxxx) escape sequences during execution of
  740. the script program, then users of IBM PCs can use the ANSI.SYS or similar
  741. console driver to interpret the escape sequences.  This is particularly useful
  742. when running a script that logs in to a full-screen system, such as an IBM
  743. mainframe through a protocol converter.  But beware: ANSI.SYS is not totally
  744. compatible with Kermit's VT emulator, and it may produce unwanted side effects,
  745. the most annoying of which is suddenly popping your PC into 40-column mode!  If
  746. you experience difficulties with your screen display while using Kermit script
  747. programs, use SET INPUT ECHO OFF.  Or remove ANSI.SYS from your CONFIG.SYS file
  748. and reboot.
  749.  
  750. PAUSE, WAIT, and similar commands also cause port input to be echoed to the
  751. screen if INPUT ECHO is ON.  Use SET INPUT ECHO OFF to defeat this effect.
  752.  
  753. Script programming hint: To test whether a readable floppy disk is available
  754. in drive A:, do this:
  755.  
  756.   SPACE A:
  757.   IF FAILURE ECHO No diskette in drive A:.
  758.  
  759. The ON_EXIT macro is intended only for automatic execution when the MS-DOS
  760. Kermit program exits.  It only works once, to prevent recursion (as would
  761. happen, for example, if you put an EXIT command in your ON_EXIT definition).
  762. If you invoke the ON_EXIT macro explicitly during a Kermit session, you won't
  763. be able to use it again.
  764.  
  765. HARDWARE RELATED PROBLEMS
  766.  
  767. Do not use the QEMM v6 "Stealth (ST:M) optimization" with Kermit.  This
  768. prevents Kermit from accessing your video board's BIOS memory and finding the
  769. video board's signature, and therefore from determining the appropriate method
  770. for switching between 80 and 132 columns.
  771.  
  772. There have been isolated reports that MS-DOS Kermit (3.11 as well as earlier
  773. versions) crashes with "Divide Overflow" errors on certain 486-based machines
  774. such as the AST Bravo 486.  This problem is currently unresolved.  Kermit is
  775. known to work properly on the Dell 486, and it contains no instructions that
  776. require any kind of processor higher than an 8086/8088.  Reportedly, this
  777. problem is not specific to Kermit; Microsoft Windows is said to crash on the
  778. same machine if the BIOS cache memory is enabled, but works OK (but about 3
  779. times slower) if the cache is disabled.
  780.  
  781. MS-DOS Kermit does not necessarily work with all brands of internal modems,
  782. particularly some of the built-in ones that come with laptop PCs from various
  783. makers.  If you can't communicate satisfactorily through such a modem, you can
  784. use the new command SET COM1 <address> [ <irq> ] (also SET COM2 .. COM4) to
  785. identify the port's hardware address and interrupt request line number.  USE
  786. THIS COMMAND WITH CAUTION, AS IT MIGHT INTERFERE WITH YOUR PC's NORMAL
  787. OPERATION!  If all else fails, give the command SET PORT BIOS1 (or 2, etc) and
  788. try again, to access the port through the system BIOS -- this is much slower
  789. that direct hardware control by Kermit.  Kermit does work with most popular
  790. brands of internal modem (such as the Hayes Smartmodem 1200B and 2400B), and
  791. with all known external (ASCII, not Baudot) modems, both direct-connect and
  792. acoustic.
  793.  
  794. When using a COM3 or COM4 port whose address and IRQ differ from Kermit's
  795. defaults, be sure to issue the SET COM3 (or SET COM4) command before SET PORT
  796. COM3 (or COM4).
  797.  
  798. Kermit does not work properly with revision C of the "built-in" (not
  799. "internal") modem in the Toshiba T1600 laptop computer.  Revision F does not
  800. have this problem.
  801.  
  802. Add-in CPU boards might not handle UART serial port details properly if the
  803. UART is not directly part of the add-in cpu board.  One symptom will be Kermit
  804. can send but not receive characters.  Try SET PORT BIOS1.
  805.  
  806. Reportedly MS-DOS 2.11 for Tandy 1200 machines has an internal problem if a
  807. program opens device CON for output, as Kermit does for REMOTE commands.  The
  808. symptom is cross linkage of files on the current disk.  This has not been noted
  809. with other versions of MS-DOS 2.11.  Solution: upgrade to a more recent version
  810. of DOS.
  811.  
  812. INTERACTIONS WITH DOS
  813.  
  814. On early (original motherboard & BIOS) PCs, and on systems that mimic them
  815. (e.g. early Compaqs), the cursor may assume a strange shape upon return from
  816. CONNECT mode.  This is caused by a bug in the early BIOS, which stored cursor
  817. attributes incorrectly.  The PC Tech Journal article "The Dashed Cursor", by
  818. Paul Pierce, PC Tech J., Dec. 1985, page 47, suggests the following fix:
  819.  
  820. code    segment public 'code'
  821.         assume cs:code, ds:code, es:nothing
  822. ;
  823. ;       This program is set up to be made into a COM file
  824. ;
  825.         org     100H
  826. ;
  827. ; First check for the monochrome adapter.
  828. ;
  829. start:  int     11H             ; set ax = equipment flag
  830.         and     al,30H          ; mask off all but video bits
  831.         cmp     al,30H          ; test for monochrome adapter
  832.         jne     exit            ; jump if not monochrome
  833. ;
  834. ; Now check for incorrect cursor mode returned from the Bios
  835. ;
  836.         mov     ah,3            ; call bios to get cursor type
  837.         int     10H             ;
  838.         cmp     cx,0607H        ; check for invalid (color) type
  839.         jne     exit            ; jump if not a bad value
  840. ;
  841. ; At this point we know that the monochrome adapter is in use and that the
  842. ; BIOS cursor mode is wrong.  Call the BIOS to fix the cursor type.
  843. ;
  844.         mov     cx,080cH        ; use correct cursor type
  845.         mov     ah,1            ; call bios to set it
  846.         int     10H
  847.  
  848. exit:   mov     ah,0            ; exit back to DOS
  849.         int     21H
  850.  
  851. code    ends
  852.         end     start
  853.  
  854. A REMOTE HOST or similar command sent to an MS-DOS Kermit server can invoke the
  855. DOS critical error handler, which issues its familiar "Abort, Ignore, Retry?"
  856. message on its real screen, and is waiting for a response from its own real
  857. keyboard, and so the server will no longer respond.  Kermit attempts to catch
  858. many of these errors before DOS learns learns about them, but some cannot be
  859. avoided (like disk i/o errors).
  860.  
  861. Interaction between MS-DOS Kermit and various terminate-and-stay-resident (TSR)
  862. programs is necessarily unpredictable, depending upon how "well behaved" they
  863. are.  Certain console, mouse, clock, or graphics drivers might interfere with
  864. file transfer, for example the CMOSCLK.SYS driver on the PS/2 model 55SX.  If
  865. TSR programs are interfering with Kermit (by taking over the timer or serial
  866. port interrupts), you should remove them all from your AUTOEXEC.BAT or
  867. CONFIG.SYS files, and then put them back one by one until you have identified
  868. the one that's causing the problem.
  869.  
  870. Caution should be used when invoking certain TSR programs while PUSHed from
  871. Kermit (e.g. using the PRINT command for the first time), as not all of these
  872. programs observe proper etiquette for allocating and freeing memory, and more
  873. importantly the TSRs will be loaded above Kermit into the middle of memory
  874. where they may prevent large programs from loading later.
  875.  
  876. NETWORKS
  877.  
  878. Sending BREAK over network connections via SET PORT BIOS1 + Int 14h interceptor
  879. may or may not work, depending upon the actual network and drivers in use.
  880. Kermit uses the BREAK facility if the driver and network support it.
  881.  
  882. Symptom: PC no longer works after installing a network board.  Diagnosis: a
  883. 16-bit VGA display adapter is running in 16-bit mode.  Cure: Jumper it back to
  884. 8 bits and all should start working again.
  885.  
  886. PC-NFS prevents applications programs such as Kermit from creating a file in
  887. the root directory of a PC-NFS disk drive.  When the applications program asks
  888. if a particular file exists in the root, PC-NFS always responds with "volume
  889. label present", whether or not the actual file is present.
  890.  
  891. SET PORT TELAPI performance is good with version 4 of Novell's LAN WorkPlace
  892. for DOS but it is poor with version 3.5 because that older version sends each
  893. Kermit byte in an individual packet.  (Should be fixed in 3.12)
  894.  
  895. The Interconnections TES product, which Kermit fully supports, has a fancy menu
  896. that pops up if you type the TES "hot key", Alt-LeftShift-T.  Reportedly, this
  897. pop-up menu interferes with the LK250 driver that is distributed with Kermit
  898. (it works fine with regular IBM keyboards).  The LK250 driver uses a special
  899. interrupt, and the TES menu program might not properly chain this interrupt.
  900. The workaround is to use TES's text-mode menu, which Kermit brings up if you
  901. type Alt-n during terminal emulation.
  902.  
  903. MS-DOS Kermit 3.11 LAT connections do not work with PATHWORKS 3.0.  They do
  904. work, however, with PATHWORKS 2.0 and 4.0.  Workaround: for PATHWORKS 3.0, use
  905. CTERM connections instead of LAT.  (Fixed in 3.12)
  906.  
  907. For DECnet/DOS (PATHWORKS) LAT connections, it is often necessary to tell the
  908. LAT control program on the PC to reserve enough memory for all of the local LAT
  909. host names.  By default, space for 16 names is allocated.  Increase your LAT
  910. control program's memory allocation if you have more than 16 hosts on your
  911. DECnet network.  Also, remove ALL permanent LAT names from your database and
  912. let the network provide them (this can mean waiting a minute or two for all
  913. broadcasts to be heard).
  914.  
  915. Connections via Kermit's built-in LAT support do not work when LAT is loaded
  916. into EMS (expanded memory) under Microsoft Windows 3.0.  Load LAT into
  917. conventional memory.  (Should be fixed in 3.12)
  918.  
  919. Reportedly, "set port decnet <node> <password>" doesn't work for LAT
  920. connections when a password must be specified.
  921.  
  922.  
  923. NETBIOS STATION-TO-STATION CONNECTIONS
  924.  
  925. The procedure for establishing a NETBIOS PC-to-PC connection is as follows:
  926.  
  927.  1. On the first PC:
  928.       SET NETBIOS NAME <xxx>
  929.       SET PORT NETBIOS
  930.       SERVER
  931.  
  932.  2. On the second PC:
  933.       SET PORT NETBIOS <xxx>.K
  934.  
  935. ("<xxx>" is any name you choose, up to 14 characters in length.)
  936.  
  937. Now you can initiate file transfer and other Kermit protocol operations from
  938. the second PC.  If you want the two PCs to "chat" in terminal mode, send a
  939. FINISH command from the second PC (or type Ctrl-C on the first, server, PC),
  940. and then give the following commands to both PCs:
  941.  
  942.   SET TERMINAL NEWLINE ON
  943.   SET LOCAL-ECHO ON
  944.   CONNECT
  945.  
  946. TCP/IP SUPPORT
  947.  
  948. As of version 3.11, MS-DOS Kermit contains built-in TCP/IP and TELNET protocol
  949. support.  This allows a PC equipped with an Ethernet or other network board
  950. that is connected to a TCP/IP network to communicate with any other node on
  951. the network, without requiring any additional TCP/IP software on your PC.  You
  952. need an external Ethernet-style (Class 1) packet driver for your network
  953. interface board, or a SLIP Packet Driver, or a Novell ODI driver.  With ODI,
  954. Kermit's Telnet operates across Ethernet (many frame kinds), Token Ring,
  955. Arcnet, and PCnet.  Kermit does not contain built-in network device drivers.
  956. Packet drivers are available from network interface manufacturers, and also
  957. via anonymous FTP from Columbia University, host watsun.cc.columbia.edu
  958. [128.59.39.2], cd packet-drivers, get the READ.ME file, read it, and take it
  959. from there.  These files, now called the Crynwyr packet driver collection, are
  960. also available from Columbia University via mail order.  ODI drivers are
  961. available from makers of the LAN adapter and in some cases from Novell.  See
  962. Novell archive "novlib" on Compuserve and on machines ftp.is.sandy.novell.com
  963. [137.65.12.2] and mirrors such as netlab2.usu.edu [129.123.1.44] for Novell
  964. supplied ODI drivers.
  965.  
  966. The TCP/IP code in this version of Kermit has been tested successfully with
  967. the following boards and packet drivers (according to reports from users):
  968.  
  969.   Ungermann-Bass PC/NIC board with Clarkson UBNICPC packet driver 9.1
  970.   3COM 3C501 with Clarkson 3C501 packet driver 5.0.
  971.   3COM 3C503 with Clarkson 3C503 packet driver 9.4.0.
  972.   Western Digital WD8003E with WD8003E packet driver 9.7.0
  973.   Cabletron 2000 and 3000 series DNI boards with CSIPD_E 1.0x packet
  974.     drivers on unshielded twisted pair, thin Ethernet, and thick Ethernet,
  975.     on both PC/AT and Microchannel buses (don't use CSIPD_X 2.00).
  976.   Micom-Racal NI5210 with NI5210 packet driver.
  977.   AT&T EN100 with Clarkson AT&T packet driver.
  978.   IBMTOKEN.COM 3C501 emulation packet driver 1.9 over various Token Ring 
  979.     boards and drivers.
  980.   DIS_PKT over NDIS for LAN Manager networks and NDIS-compliant boards
  981.     including SD8003, 3C503, AT&T 10MB/sec thinwire
  982.   Harvard ODIPKT over LSL, LANSUP, and IPXODI over Ethernet (but not
  983.     Token Ring) 
  984.  
  985. LocalTalk packet drivers are not supported, as they are not Ethernet-class 
  986. Packet drivers.  SLIP is supported in Version 3.12.
  987.  
  988. The performance of the 3C50x packet drivers is poor, but the operation seems
  989. correct.  Suggestion from a 3COM 3C503 Ethernet board user: "When installing
  990. the packet driver for 3Com 503 cards, one has to pay attention that the memory
  991. option on the card is not disabled.  It was in my case, and the packet-driver
  992. did not complain.  Since other drivers (e.g.  the DEC PATHWORKS driver) do not
  993. require the memory enabled, the default is disabled."
  994.  
  995. Reportedly, the packet driver supplied by Western Digital with their WD8003E
  996. and/or Elite network boards cannot be found by Kermit.  The Crynwyr WD8003E
  997. packet driver, however, works correctly with both the WD8003E and Elite boards.
  998.  
  999. To reconfigure a Novell network for packet drivers so Kermit and Novell
  1000. software can be used concurrently, use special software developed at Brigham
  1001. Young University, available via anonymous ftp from dcsprod.byu.edu.  For
  1002. further information, read the Kermit Distribution file MSABYU.HLP.
  1003.  
  1004. An Ethernet-simulation packet driver is available for systems using the NDIS
  1005. (Network Driver Interface Specification) program.  NDIS is frequently used with
  1006. Lan Manager networks, including AT&T's StarGROUP network and DEC's Pathworks
  1007. for DOS.  The interface program is named DIS_PKT and originated with FTP
  1008. Software Inc.  Their program DIS_PKT.GUP is available by anonymous ftp to
  1009. vax.ftp.com, and a research version DIS_PKT9.ZIP is available from Utah State
  1010. University by anonymous ftp to netlab2.usu.edu.  Instructions for configuring
  1011. Lan Manager to include DIS_PKT are included with the program.
  1012.  
  1013. Kermit's TCP/IP support does not work over the Harvard ODIPKT driver on a Token
  1014. Ring network because it requires Kermit to use Token Ring rather than Ethernet
  1015. frames (but it does work with ODIPKT over Ethernet).  Version 3.12 supports
  1016. ODI directly, ODIPKT is not necessary except when using Windows.
  1017.  
  1018. Direct use of ODI drivers permits Kermit's TCP/IP to run with several kinds of
  1019. Ethernet frames: DIX/Blue-Book/Ethernet_II, 802.2, 802.2 with SNAP, and 802.3,
  1020. as well as with Token Ring, Arcnet, and PCLan broadband.  No extra protocol
  1021. "shim" is needed.  The ODI interface will be tried if a Packet Driver is not
  1022. found, and it can be selected in preference to a packet driver by the command:
  1023.  
  1024.    SET TCP/IP PACKET-DRIVER-INTERRUPT ODI
  1025.  
  1026. where "ODI" replaces the interrupt number of a Packet Driver.
  1027.  
  1028. For ODI, the file NET.CFG should have the lines "Protocol IP etc" similar to
  1029. the example below:
  1030.  
  1031.     # File NET.CFG, example
  1032.     PB buffers=10
  1033.     show dots=on
  1034.  
  1035.     Link Support
  1036.         buffers 6 1514
  1037.         MemPool 2048
  1038.  
  1039.     Link Driver SMCPLUS
  1040.         Port  280 20
  1041.         Mem   000CA000 2000/10
  1042.         Int   7
  1043.         frame Ethernet_II
  1044.         Protocol IPX    8137    Ethernet_II
  1045.         Protocol IP    0800    Ethernet_II
  1046.         Protocol ARP    0806    Ethernet_II
  1047.         Protocol RARP    8035    Ethernet_II
  1048.  
  1049. Kermit requires three "protocols", IP, ARP, and optionally RARP as shown
  1050. above.  The frame kinds can be anything the board will support: Ethernet,
  1051. Token Ring, Arcnet, all IEEE 802.2-based frames etc.  ODI will complain if the
  1052. frame type cannot support these protocols.  Arcnet uses different TYPE values,
  1053. D4 for IP, D5 for ARP, and D6 for RARP, rather than 0800 etc, as per RFC-1201.
  1054.  
  1055. There is the question of which board Kermit (or IPX or other application) will
  1056. use if two or more boards are available.  Although one would think the board
  1057. could be selected by placing the Protocol IP, etc, lines under the desired
  1058. Link Driver section, such is not really the case; those lines tell the LSL the
  1059. frame kind to associate with the protocol (say IP) but not the board.  The
  1060. frame lines are associated with particular boards, however.  The default
  1061. method for finding a board is that the application chooses "the first board"
  1062. offering a suitable frame, regardless of whether or not the Protocol IP, etc,
  1063. lines are present for that board.  "First" refers not to the contents of
  1064. NET.CFG but to the order in which board drivers are loaded at DOS level.  So
  1065. the indented protocol lines tell ODI which frame a protocol needs, and a TYPE
  1066. to use for recognizing packets, but the lines do not identify a particular
  1067. board.
  1068.  
  1069. To target a particular board a separate main section is used in NET.CFG.  The
  1070. section starts with the word Protocol against the left margin and has Bind
  1071. indented beneath it, like this -
  1072.  
  1073.        Protocol Kermit            indentifies Kermit section of NET.CFG
  1074.         bind SMCPLUS        bind to SMCPLUS board driver
  1075.  
  1076. When a board name is used more than once then the alternative form is to use
  1077. a board number in place of the name:
  1078.  
  1079.        Protocol Kermit
  1080.         bind #2            bind to the board loaded second
  1081.  
  1082. Kermit considers the text in these sections to be case insensitive.  The
  1083. #<digit> construction must not have a separation between the number sign (#)
  1084. and the digit.  The #<digit> case is normally used when two or more boards
  1085. share the same driver and thus are not distinguishable by name alone.
  1086.  
  1087. A sample STARTNET.BAT file might look like this.
  1088.  
  1089. @echo off            run quietly
  1090. c:\lsl >nul            LSL is always loaded before boards
  1091. c:\smcplus.com >nul        SMC/WD8003E board, the first
  1092. c:\exos.com >nul        EXOS-205T board, the second
  1093. rem c:\odinsup            Odinsup can coexist with Kermit
  1094. rem c:\odipkt 0 96        Odipkt can coexist with Kermit
  1095. c:\ipxodi >nul            IPX is always loaded after boards
  1096. rem echo Starting network...    may be needed to help some drivers
  1097. c:\bnetx ps=my-preferred-server > nul
  1098. rem (Packet Burst mode)    NETX loads after IPX
  1099. @echo on
  1100.  
  1101. If both EXOS and SMCPLUS boards offer frame Ethernet_II Kermit will choose the
  1102. first loaded board, SMCPLUS, in the absence of a "bind" command.  Putting the
  1103. section "Protocol Kermit, bind <board name or number>" anywhere in NET.CFG
  1104. selects a particular board for Kermit.  A complete NET.CFG file using two
  1105. boards is shown below:
  1106.  
  1107. # File NET.CFG, an example with two boards
  1108. PB buffers=10
  1109. show dots=on
  1110. # all main sections must start in column 1, indent local material.
  1111.  
  1112. # Protocol "IPX" is for Novell's IPXODI
  1113. Protocol IPX
  1114.     Bind EXOS
  1115.  
  1116. # Protocol "Kermit" is for MS-DOS Kermit
  1117. Protocol KERMIT
  1118.     Bind EXOS
  1119.  
  1120. Link Support
  1121.     buffers 6 1514
  1122.     MemPool 2048
  1123.  
  1124. Link Driver exos
  1125.     Port  310 20
  1126.     Mem   000D0000 400
  1127.     Int   5
  1128.     frame Ethernet_II
  1129.     Protocol IPX    8137    Ethernet_II
  1130.     Protocol IP    0800    Ethernet_II
  1131.     Protocol ARP    0806    Ethernet_II
  1132.     Protocol RARP    8035    Ethernet_II
  1133.  
  1134. Link Driver SMCPLUS
  1135.     Port  280 20
  1136.     Mem   000CA000 2000/10
  1137.     Int   7
  1138.     frame Ethernet_II
  1139.     frame Ethernet_Snap
  1140.     Protocol IPX    8137    Ethernet_II
  1141.     Protocol IP    0800    Ethernet_II
  1142.     Protocol ARP    0806    Ethernet_II
  1143.     Protocol RARP    8035    Ethernet_II
  1144.  
  1145. # Protocol "TCPIP" is for Novell's Lan WorkPlace for DOS, not Kermit
  1146. Protocol TCPIP
  1147.     ip_address    129.123.1.99
  1148.     ip_router    129.123.1.254
  1149.     ip_netmask    255.255.255.0
  1150.     tcp_sockets    8
  1151.     udp_sockets    8
  1152.     raw_sockets    1
  1153.     nb_sessions    4
  1154.     nb_commands    8
  1155.     nb_adapter    0
  1156.     nb_domain    usu.edu
  1157.  
  1158. At the moment there is no Windows support for Kermit over ODI.
  1159.  
  1160. Kermit's built-in TCP/IP support in v3.11, as well as several other of its 
  1161. networking methods, use BIOS Int 14H internally.  This can interfere with 
  1162. other devices whose drivers use the same interrupt, for example speech 
  1163. devices connected to a serial port.  Version 3.12 avoids this problem.
  1164.  
  1165. Domain name resolution might not work when you give a nickname instead of a
  1166. complete host name in the SET PORT TCP/IP command and Kermit transforms
  1167. the nickname into the desired complete host name by combining it with your
  1168. TCP/IP DOMAIN.  Notice that Kermit does not use a special Hosts file to relate
  1169. nicknames to complete host names.  Workarounds: use a complete hostname, an IP
  1170. host number, or set your TCP/IP DOMAIN correctly.  It should be obvious that
  1171. Domain Name Servers are specified by their IP number rather than name.
  1172.  
  1173. Version 3.12 supports multiple gateways off the local network.  Choosing the
  1174. incorrect gateway normally results in that gateway sending an ICMP Redirect
  1175. message to Kermit indicating the preferred gateway, and Kermit displays such
  1176. messages.  Version 3.11 did not implement ICMP Redirect actions.
  1177.  
  1178. For IBM mainframe linemode connections, automatic appearance of the login
  1179. banner might not work.  Type a carriage return (Enter) to get the login
  1180. banner.  Local-echo and linemode operation are negotiated automatically.
  1181.  
  1182. BOOTP requests are handled correctly within the local network, and have been
  1183. tested successfully through Novell's BOOTP forwarder NLM and through Cisco
  1184. routers with software version 8.2.7.  In the SET TCP/IP ADDRESS command, the
  1185. words BOOTP and RARP must be spelled out in full.
  1186.  
  1187. EXIT from Kermit closes your TCP/IP session (just like HANGUP).  PUSHing or
  1188. running DOS commands from Kermit keeps it open.  In version 3.12, EXITing 
  1189. while a session is active causes a confirmation message to appear, so you can
  1190. change your mind.
  1191.  
  1192. Kermit can connect to any TCP port other than SMTP (25, mail), but version
  1193. 3.11 uses only TELNET port (23).  Kermit honors TELNET protocol negotiations,
  1194. including terminal type and ECHO/SGA.  Version 3.11 sends "VT100"; version
  1195. 3.12 sends the active terminal type or allows the user to create a string with
  1196. command SET TCP/IP TELNET-TERM-TYPE.
  1197.  
  1198. TELNET protocol echo negotiations do not work with certain hosts, protocol
  1199. converters, or terminal servers.  Some examples include Xyplex terminal
  1200. servers, MICOM Interlan NTS100 terminal servers, MVS/TSO systems accessed via
  1201. Fibronics KNET/MVS 3.0, Network Research Corp's TCP/IP for VAX/VMS.  (This
  1202. should be fixed in version 3.12).  TELNET options are often implemented
  1203. strangely on terminal servers, so beware.
  1204.  
  1205. Not supported: FTP, TFTP, multiple sessions, automatic setting of PC date/time
  1206. from network, 3270 emulation (tn3270), etc.  There is no PING command, but
  1207. MS-DOS Kermit responds when PINGed and when probed by Traceoute.  The 
  1208. keyboard verb \Knethold does nothing.
  1209.  
  1210. For TCP/IP connections to IBM mainframes in full screen 3270 mode, you need an
  1211. intermediate host or device to do the 3270/ASCII terminal conversion.  Typical
  1212. setup is a TCP/IP terminal server with its serial lines connected to a protocol
  1213. converter (e.g. IBM 7171), a UNIX host that has tn3270 available, or a terminal
  1214. server (like Cisco) that does 3270 terminal emulation.  To transfer files with
  1215. an IBM mainframe, you might have to tell MS-DOS Kermit to SET PARITY SPACE.
  1216.  
  1217. Version 3.12 supports inbound connections to MS-DOS Kermit but version 3.11
  1218. does not.  Inbound TELNET connections do not copy DOS screens, etc, in the
  1219. manner of products such as Carbon Copy and PC Anywhere and the free telnetd
  1220. program of Erick Engelke; a Kermit-to-Kermit connection is made instead.
  1221.  
  1222. MS-DOS Kermit does not provide any services except PING, i.e. ICMP ECHO,
  1223. and Traceroute replies to outside requestors.  You can't "finger" it, mail to
  1224. it, etc.
  1225.  
  1226. Kermit's TCP/IP support cannot be used simultaneously with PC NFS because both
  1227. applications want to register use of ARP, IP, and other protocols with the
  1228. packet driver, but each protocol can only be assigned to one application.
  1229. This is only one particular case of the more general rule: only one TCP/IP
  1230. based application can use a LAN adapter at once.
  1231.  
  1232. To make Kermit TCP/IP connections under Windows 3.0 (Enhanced Mode), configure
  1233. its .PIF file to "Lock Application in Memory", or preferably use the WINPKT 
  1234. shim.  Only one copy of Kermit can have a TCP/IP connection at a time.
  1235.  
  1236. The SET TCP/IP and SET PORT TCP/IP commands only return failure codes if there
  1237. is a parse error.  The connection is not opened until the first attempt to
  1238. communicate with the remote host: CONNECT, PAUSE, OUTPUT, etc.  While
  1239. connection establishment is in progress, you can't interrupt the program with
  1240. Ctrl-C.  Use IF SUCCESS / FAILURE after PAUSE 0 to check if the connection
  1241. is open, for example:
  1242.  
  1243.   DEFINE TELNET SET PORT TCP \%1 \%2, PAUSE 0, IF SUCCESS CONNECT
  1244.  
  1245. The second variable above is for the optional TCP port number in version 3.12.
  1246.  
  1247. Performance hints: Set your Kermit packet size to about 500, so it will fit
  1248. inside network packets, or to some multiple thereof.  A packet size of, say,
  1249. 600 (or 1100, etc) gives poor performance, because the result on the net is a
  1250. long and a short packet.  A convenient setting is SET RECEIVE PACKET 2000, SET
  1251. WINDOW 4, resulting in four 500-byte packets in a window.  SET FLOW NONE lets
  1252. TCP/IP do the flow control and eliminates Kermit's need to check for Xon/Xoff.
  1253. In most situations beyond the local network performance will be limited by the
  1254. long distance lines rather than by the PC.
  1255.  
  1256. End of MSKERM.BWR / KERMIT.BWR
  1257.